package com.mgq.design.create.builder;

import java.util.ArrayList;
import java.util.List;

/**
 * <b>功能：</b>一餐<br>
 * <b>Copyright mgq</b>
 * <li>版本&nbsp;&nbsp;&nbsp;&nbsp;修改日期&nbsp;&nbsp;&nbsp;&nbsp;部　　门&nbsp;&nbsp;&nbsp;&nbsp;作　者&nbsp;&nbsp;&nbsp;&nbsp;变更内容</li><hr>
 * <li>v1.0&nbsp;&nbsp;&nbsp;&nbsp;20220318&nbsp;&nbsp;营业后台&nbsp;&nbsp;&nbsp;&nbsp;马广奇&nbsp;&nbsp;&nbsp;&nbsp;创建类</li>
 * <br><br>
 *
 * @author 马广奇
 * @version 2022-03-18 10:00
 */
public  class Meal {
    private List<Item> items = new ArrayList<>();

    /**
     * <b>功能描述：</b>增加item<br>
     * <b>修订记录：</b><br>
     * <li>20220318&nbsp;&nbsp;|&nbsp;&nbsp;马广奇&nbsp;&nbsp;|&nbsp;&nbsp;创建方法</li><br><br>
     *
     * @param item item
     * @return void
     */
    public void addItem(Item item) {
        items.add(item);
    }
/**
 * <b>功能描述：</b>获取花费的金额<br>
 * <b>修订记录：</b><br>
 * <li>20220318&nbsp;&nbsp;|&nbsp;&nbsp;马广奇&nbsp;&nbsp;|&nbsp;&nbsp;创建方法</li><br><br>
 *
 *
 *@return float
 */

    public float getCost() {
       return items.stream().map(Item::price).reduce(Float::sum).get();
    }

    public void showItem() {
        items.stream().forEach(item -> {
            System.out.print("名称:"+item.name());
            System.out.print(" 价格:"+item.price());
            System.out.println(" 包装:"+item.packaging().pack());
        });
    }
}
